<?php
declare(strict_types=1);

namespace app\admin\traits;

/**
 * 服务公共方法
 * Trait ServiceTrait
 * @package app\traits
 */
trait ServiceTrait
{
    /**
     * 通过ID获取信息
     * @param $id
     * @param array $field
     * @param bool $where
     * @return mixed
     */
    public static function getInfoByID($id, $field = [], $where = true)
    {
        return self::$repository::getInfoByID($id, $field, $where);
    }

    /**
     * 通过name获取信息
     * @param $name
     * @param array $field
     * @param bool $where
     * @return mixed
     */
    public static function getInfoByName($name, $field = [], $where = true){
        return self::$repository::getInfoByName($name, $field, $where);
    }
    /**
     * 存储数据
     * @param $data   数据
     * @param int $id 主键
     */
    public static function save($data, $id = 0)
    {
        if (empty($id)) {
            // 无主键,新增
            $result = self::$repository::add($data);
        }else{
            // 有主键,编辑
            $result = self::$repository::edit($id, $data);
        }
        if($result){
            return $id;
        }else{
            return false;
        }
    }
}